# 获取配置文件所在目录
import json
import os
import sys


def get_read_computation_path():

    # 假设config.json和exe在同一目录下
    if getattr(sys, 'frozen', False):
        # 如果是打包后的可执行文件，返回其所在目录
        # config_path = sys._MEIPASS
        # 打包后，返回 EXE 所在目录
        exe_dir = os.path.dirname(sys.executable)
        config_path = os.path.join(exe_dir, 'config.json')

    else:
        # 如果是脚本形式运行，则返回当前脚本所在的目录
        # 获取当前脚本所在目录
        script_dir = os.path.dirname(os.path.abspath(__file__))
        # 推断根目录（假设根目录是当前脚本的上两级目录）
        root_dir = os.path.dirname(script_dir)
        # 拼接 config.json 的完整路径
        config_path = os.path.join(root_dir, 'config.json')

    return config_path
# 读取配置文件
def read_computation_sheet_config():
    config_path=get_read_computation_path()
    if not os.path.exists(config_path):
        raise FileNotFoundError(f"找不到配置文件: {config_path}")
    with open(config_path, 'r',encoding='utf-8') as f:
        config = json.load(f)
    return config
